#pragma once

/*
using namespace System;
using namespace System::ComponentModel;
using namespace System::Collections;
using namespace System::Windows::Forms;
using namespace System::Data;
using namespace System::Drawing;
*/

#include <stdlib.h>


namespace BAA {

	/// <summary>
	/// Summary for GameScreen
	///
	/// WARNING: If you change the name of this class, you will need to change the
	///          'Resource File Name' property for the managed resource compiler tool
	///          associated with all .resx files this class depends on.  Otherwise,
	///          the designers will not be able to interact properly with localized
	///          resources associated with this form.
	/// </summary>
	public ref class GameScreen : public System::Windows::Forms::Form
	{
	public:
		GameScreen(void)
		{
			InitializeComponent();
			//
			//TODO: Add the constructor code here
			//
		}

	protected:
		/// <summary>
		/// Clean up any resources being used.
		/// </summary>
		~GameScreen()
		{
			if (components)
			{
				delete components;
			}
		}
	private: System::Windows::Forms::Panel^  panel4;
	protected: 
	private: System::Windows::Forms::Label^  label7;
	private: System::Windows::Forms::CheckedListBox^  checkedListBox1;
	private: System::Windows::Forms::Panel^  panel2;
	private: System::Windows::Forms::CheckedListBox^  checkedListBox2;
	private: System::Windows::Forms::Label^  label2;
	private: System::Windows::Forms::Panel^  panel1;
	private: System::Windows::Forms::CheckBox^  checkBox9;
	private: System::Windows::Forms::Label^  label1;
	private: System::Windows::Forms::CheckBox^  checkBox8;
	private: System::Windows::Forms::CheckBox^  checkBox7;
	private: System::Windows::Forms::CheckBox^  checkBox6;
	private: System::Windows::Forms::CheckBox^  checkBox5;
	private: System::Windows::Forms::CheckBox^  checkBox4;
	private: System::Windows::Forms::CheckBox^  checkBox3;
	private: System::Windows::Forms::CheckBox^  checkBox2;
	private: System::Windows::Forms::CheckBox^  checkBox1;
	private: System::Windows::Forms::ListBox^  listBox1;
	private: System::Windows::Forms::Button^  button3;
	private: System::Windows::Forms::Button^  button2;
	private: System::Windows::Forms::Button^  button1;

	private:
		/// <summary>
		/// Required designer variable.
		/// </summary>
		System::ComponentModel::Container ^components;

#pragma region Windows Form Designer generated code
		/// <summary>
		/// Required method for Designer support - do not modify
		/// the contents of this method with the code editor.
		/// </summary>
		void InitializeComponent(void)
		{
			this->panel4 = (gcnew System::Windows::Forms::Panel());
			this->label7 = (gcnew System::Windows::Forms::Label());
			this->checkedListBox1 = (gcnew System::Windows::Forms::CheckedListBox());
			this->panel2 = (gcnew System::Windows::Forms::Panel());
			this->checkedListBox2 = (gcnew System::Windows::Forms::CheckedListBox());
			this->label2 = (gcnew System::Windows::Forms::Label());
			this->panel1 = (gcnew System::Windows::Forms::Panel());
			this->checkBox9 = (gcnew System::Windows::Forms::CheckBox());
			this->label1 = (gcnew System::Windows::Forms::Label());
			this->checkBox8 = (gcnew System::Windows::Forms::CheckBox());
			this->checkBox7 = (gcnew System::Windows::Forms::CheckBox());
			this->checkBox6 = (gcnew System::Windows::Forms::CheckBox());
			this->checkBox5 = (gcnew System::Windows::Forms::CheckBox());
			this->checkBox4 = (gcnew System::Windows::Forms::CheckBox());
			this->checkBox3 = (gcnew System::Windows::Forms::CheckBox());
			this->checkBox2 = (gcnew System::Windows::Forms::CheckBox());
			this->checkBox1 = (gcnew System::Windows::Forms::CheckBox());
			this->listBox1 = (gcnew System::Windows::Forms::ListBox());
			this->button3 = (gcnew System::Windows::Forms::Button());
			this->button2 = (gcnew System::Windows::Forms::Button());
			this->button1 = (gcnew System::Windows::Forms::Button());
			this->panel4->SuspendLayout();
			this->panel2->SuspendLayout();
			this->panel1->SuspendLayout();
			this->SuspendLayout();
			// 
			// panel4
			// 
			this->panel4->Controls->Add(this->label7);
			this->panel4->Controls->Add(this->checkedListBox1);
			this->panel4->Location = System::Drawing::Point(18, 273);
			this->panel4->Name = L"panel4";
			this->panel4->Size = System::Drawing::Size(332, 124);
			this->panel4->TabIndex = 16;
			// 
			// label7
			// 
			this->label7->AutoSize = true;
			this->label7->Location = System::Drawing::Point(5, 11);
			this->label7->Name = L"label7";
			this->label7->Size = System::Drawing::Size(82, 13);
			this->label7->TabIndex = 1;
			this->label7->Text = L"Filter by Agents:";
			// 
			// checkedListBox1
			// 
			this->checkedListBox1->FormattingEnabled = true;
			this->checkedListBox1->Items->AddRange(gcnew cli::array< System::Object^  >(5) {L"001 - Bob McKenzie", L"002 - Ray Finkle", 
				L"003 - Jack Bauer", L"004 - Sandra Bullock", L"005 - Doogie Howser"});
			this->checkedListBox1->Location = System::Drawing::Point(8, 35);
			this->checkedListBox1->Name = L"checkedListBox1";
			this->checkedListBox1->Size = System::Drawing::Size(182, 79);
			this->checkedListBox1->TabIndex = 0;
			// 
			// panel2
			// 
			this->panel2->Controls->Add(this->checkedListBox2);
			this->panel2->Controls->Add(this->label2);
			this->panel2->Location = System::Drawing::Point(18, 157);
			this->panel2->Name = L"panel2";
			this->panel2->Size = System::Drawing::Size(332, 110);
			this->panel2->TabIndex = 15;
			// 
			// checkedListBox2
			// 
			this->checkedListBox2->FormattingEnabled = true;
			this->checkedListBox2->Items->AddRange(gcnew cli::array< System::Object^  >(6) {L"Ninja", L"Lover", L"Friend", L"Parent", 
				L"Enemy", L"FamilyMember"});
			this->checkedListBox2->Location = System::Drawing::Point(8, 35);
			this->checkedListBox2->Name = L"checkedListBox2";
			this->checkedListBox2->Size = System::Drawing::Size(134, 64);
			this->checkedListBox2->TabIndex = 2;
			// 
			// label2
			// 
			this->label2->AutoSize = true;
			this->label2->Location = System::Drawing::Point(5, 14);
			this->label2->Name = L"label2";
			this->label2->Size = System::Drawing::Size(76, 13);
			this->label2->TabIndex = 0;
			this->label2->Text = L"Filter by Roles:";
			// 
			// panel1
			// 
			this->panel1->Controls->Add(this->checkBox9);
			this->panel1->Controls->Add(this->label1);
			this->panel1->Controls->Add(this->checkBox8);
			this->panel1->Controls->Add(this->checkBox7);
			this->panel1->Controls->Add(this->checkBox6);
			this->panel1->Controls->Add(this->checkBox5);
			this->panel1->Controls->Add(this->checkBox4);
			this->panel1->Controls->Add(this->checkBox3);
			this->panel1->Controls->Add(this->checkBox2);
			this->panel1->Controls->Add(this->checkBox1);
			this->panel1->Location = System::Drawing::Point(18, 12);
			this->panel1->Name = L"panel1";
			this->panel1->Size = System::Drawing::Size(332, 139);
			this->panel1->TabIndex = 14;
			// 
			// checkBox9
			// 
			this->checkBox9->AutoSize = true;
			this->checkBox9->Location = System::Drawing::Point(169, 44);
			this->checkBox9->Name = L"checkBox9";
			this->checkBox9->Size = System::Drawing::Size(50, 17);
			this->checkBox9->TabIndex = 10;
			this->checkBox9->Text = L"Steal";
			this->checkBox9->UseVisualStyleBackColor = true;
			// 
			// label1
			// 
			this->label1->AutoSize = true;
			this->label1->Location = System::Drawing::Point(5, 18);
			this->label1->Name = L"label1";
			this->label1->Size = System::Drawing::Size(109, 13);
			this->label1->TabIndex = 1;
			this->label1->Text = L"Filter by Event Types:";
			// 
			// checkBox8
			// 
			this->checkBox8->AutoSize = true;
			this->checkBox8->Location = System::Drawing::Point(94, 115);
			this->checkBox8->Name = L"checkBox8";
			this->checkBox8->Size = System::Drawing::Size(44, 17);
			this->checkBox8->TabIndex = 9;
			this->checkBox8->Text = L"Buy";
			this->checkBox8->UseVisualStyleBackColor = true;
			// 
			// checkBox7
			// 
			this->checkBox7->AutoSize = true;
			this->checkBox7->Location = System::Drawing::Point(94, 92);
			this->checkBox7->Name = L"checkBox7";
			this->checkBox7->Size = System::Drawing::Size(42, 17);
			this->checkBox7->TabIndex = 8;
			this->checkBox7->Text = L"Eat";
			this->checkBox7->UseVisualStyleBackColor = true;
			// 
			// checkBox6
			// 
			this->checkBox6->AutoSize = true;
			this->checkBox6->Location = System::Drawing::Point(94, 68);
			this->checkBox6->Name = L"checkBox6";
			this->checkBox6->Size = System::Drawing::Size(61, 17);
			this->checkBox6->TabIndex = 7;
			this->checkBox6->Text = L"Nurture";
			this->checkBox6->UseVisualStyleBackColor = true;
			// 
			// checkBox5
			// 
			this->checkBox5->AutoSize = true;
			this->checkBox5->Location = System::Drawing::Point(94, 44);
			this->checkBox5->Name = L"checkBox5";
			this->checkBox5->Size = System::Drawing::Size(68, 17);
			this->checkBox5->TabIndex = 6;
			this->checkBox5->Text = L"Socialize";
			this->checkBox5->UseVisualStyleBackColor = true;
			// 
			// checkBox4
			// 
			this->checkBox4->AutoSize = true;
			this->checkBox4->Location = System::Drawing::Point(8, 115);
			this->checkBox4->Name = L"checkBox4";
			this->checkBox4->Size = System::Drawing::Size(51, 17);
			this->checkBox4->TabIndex = 5;
			this->checkBox4->Text = L"Court";
			this->checkBox4->UseVisualStyleBackColor = true;
			// 
			// checkBox3
			// 
			this->checkBox3->AutoSize = true;
			this->checkBox3->Location = System::Drawing::Point(8, 92);
			this->checkBox3->Name = L"checkBox3";
			this->checkBox3->Size = System::Drawing::Size(69, 17);
			this->checkBox3->TabIndex = 4;
			this->checkBox3->Text = L"Threaten";
			this->checkBox3->UseVisualStyleBackColor = true;
			// 
			// checkBox2
			// 
			this->checkBox2->AutoSize = true;
			this->checkBox2->Location = System::Drawing::Point(8, 68);
			this->checkBox2->Name = L"checkBox2";
			this->checkBox2->Size = System::Drawing::Size(90, 17);
			this->checkBox2->TabIndex = 3;
			this->checkBox2->Text = L"Communicate";
			this->checkBox2->UseVisualStyleBackColor = true;
			// 
			// checkBox1
			// 
			this->checkBox1->AutoSize = true;
			this->checkBox1->Location = System::Drawing::Point(8, 44);
			this->checkBox1->Name = L"checkBox1";
			this->checkBox1->Size = System::Drawing::Size(57, 17);
			this->checkBox1->TabIndex = 2;
			this->checkBox1->Text = L"Attack";
			this->checkBox1->UseVisualStyleBackColor = true;
			// 
			// listBox1
			// 
			this->listBox1->Anchor = static_cast<System::Windows::Forms::AnchorStyles>((System::Windows::Forms::AnchorStyles::Top | System::Windows::Forms::AnchorStyles::Right));
			this->listBox1->FormattingEnabled = true;
			this->listBox1->Items->AddRange(gcnew cli::array< System::Object^  >(19) {L"001 - Bob McKenzie: Planning. X: 3 Y: 5 Z: 0.", 
				L"002 - Ray Finkle: Planning. X: 8 Y: 2 Z: 0.", L"003 - Jack Bauer: Planning. X: 4 Y: 7 Z: 0.", L"004 - Sandra Bullock: Planning. X: 3 Y: 2 Z: 0.", 
				L"005 - Doogie Howser: Planning. X: 2 Y: 1 Z: 0.", L"001 - Bob McKenzie: Moving: Walk. X: 8 Y: 3 Z: 0.", L"002 - Ray Finkle: Waiting. X: 8 Y: 2 Z: 0.", 
				L"003 - Jack Bauer: Moving: Walk. X: 3 Y: 1 Z: 0.", L"004 - Sandra Bullock: Eating: EatFood. X: 3 Y: 2 Z: 0.", L"005 - Doogie Howser: Moving: Walk. X: 3 Y: 3 Z: 0.", 
				L"001 - Bob McKenzie: Communicate: Whisper. Target: 002 - Ray Finkle. X: 8 Y: 3 Z: " 
				L"0.", L"Whisper. Loudness: 0.1. Source 001 - Bob McKenzie. Targets: 002 - Ray Finkle. ", 
				L"002 - Ray Finkle: Threaten: Whisper. Target 001 - Bob McKenzie. X: 8 Y: 2 Z: 0.", L"Whisper. Loudness: 0.1. Source 002 - Ray Finkle. Targets 001 - Bob McKenzie. Targ" 
				L"et Emotions: Happiness -0.5, Fear +0.2.", 
				L"003 - Jack Bauer: Steal: StealFood. Success. X: 3 Y: 1 Z: 0.", L"StealFood. Source 003 - Jack Bauer. Targets 004 - Sandra Bullock. Target Emotions" 
				L": Happiness -0.4, Anger + 0.3, Sadness -0.2.", 
				L"004 - Sandra Bullock: Communicate: Yell. X: 3 Y: 2 Z: 0.", L"Yell. Source 004 - Sandra Bullock. Targets 001 - Bob McKenzie, 002 - Ray Finkle, " 
				L"003 - Jack Bauer, 005 - Doogie Howser.", 
				L"005 - Doogie Howser: Moving: Run. X: 10 Y: 10 Z: 0."});
			this->listBox1->Location = System::Drawing::Point(381, 12);
			this->listBox1->Name = L"listBox1";
			this->listBox1->Size = System::Drawing::Size(375, 498);
			this->listBox1->TabIndex = 13;
			// 
			// button3
			// 
			this->button3->Location = System::Drawing::Point(681, 529);
			this->button3->Name = L"button3";
			this->button3->Size = System::Drawing::Size(75, 23);
			this->button3->TabIndex = 18;
			this->button3->Text = L"Stop";
			this->button3->UseVisualStyleBackColor = true;
			this->button3->Click += gcnew System::EventHandler(this, &GameScreen::button3_Click);
			// 
			// button2
			// 
			this->button2->Location = System::Drawing::Point(600, 529);
			this->button2->Name = L"button2";
			this->button2->Size = System::Drawing::Size(75, 23);
			this->button2->TabIndex = 17;
			this->button2->Text = L"Re-start";
			this->button2->UseVisualStyleBackColor = true;
			// 
			// button1
			// 
			this->button1->Location = System::Drawing::Point(519, 529);
			this->button1->Name = L"button1";
			this->button1->Size = System::Drawing::Size(75, 23);
			this->button1->TabIndex = 16;
			this->button1->Text = L"Resume";
			this->button1->UseVisualStyleBackColor = true;
			// 
			// GameScreen
			// 
			this->AutoScaleDimensions = System::Drawing::SizeF(6, 13);
			this->AutoScaleMode = System::Windows::Forms::AutoScaleMode::Font;
			this->ClientSize = System::Drawing::Size(784, 564);
			this->Controls->Add(this->button3);
			this->Controls->Add(this->panel4);
			this->Controls->Add(this->button2);
			this->Controls->Add(this->button1);
			this->Controls->Add(this->panel2);
			this->Controls->Add(this->panel1);
			this->Controls->Add(this->listBox1);
			this->Name = L"GameScreen";
			this->Text = L"Believable Agent Architecture";
			this->panel4->ResumeLayout(false);
			this->panel4->PerformLayout();
			this->panel2->ResumeLayout(false);
			this->panel2->PerformLayout();
			this->panel1->ResumeLayout(false);
			this->panel1->PerformLayout();
			this->ResumeLayout(false);

		}
#pragma endregion
	private: System::Void button3_Click(System::Object^  sender, System::EventArgs^  e) {
				 exit(0);
			 }
};
}
